<?php
/**
 * Smarty plugin
 * @package Smarty
 * @subpackage plugins
 */


/**
 * Smarty size modifier plugin
 *
 * Type:     modifier<br>
 * Name:     size<br>
 * Purpose:  Replace all repeated spaces, newlines, tabs
 *           with a single space or supplied replacement string.<br>
 * Example:  {$var|size} {$var|size}
 * Date:     September 25th, 2002
 * @link http://smarty.php.net/manual/en/language.modifier.size.php
 *          size (Smarty online manual)
 * @author   Monte Ohrt <monte at ohrt dot com>
 * @version  1.0
 * @param string
 * @param string
 * @return string
 */
function smarty_modifier_size($text, $type = 'file')
{
	if( $type == 'file' ) {
		if( $text >= 1024 * 1024) {
			return number_format($text/(1024*1024), 2) . 'Mb';
		} elseif( $text >= 1024 ) {
			return number_format($text/1024, 2) . 'kb';
		} elseif( $text > 0 ) {
			return $text . 'B';
		} else {
			return '';	
		}
	}
	return $text;
}

/* vim: set expandtab: */

?>
